/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.ufrn.dca.ExportarDados;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author allan
 */
public class Exportador {

    private List erro_1;
    private List erro_2;
    private List nivel_Real_1;
    private List nivel_Real_2;
    private List nivel_Est_1;
    private List nivel_Est_2;

    public Exportador() {
        this.erro_1 = new ArrayList();
        this.erro_2 = new ArrayList();
        this.nivel_Real_1 = new ArrayList();
        this.nivel_Real_2 = new ArrayList();
        this.nivel_Est_1 = new ArrayList();
        this.nivel_Est_2 = new ArrayList();
    }

    public List getErro_1() {
        return erro_1;
    }

    public List getErro_2() {
        return erro_2;
    }

    public List getNivel_Real_1() {
        return nivel_Real_1;
    }

    public List getNivel_Real_2() {
        return nivel_Real_2;
    }

    public List getNivel_Est_1() {
        return nivel_Est_1;
    }

    public List getNivel_Est_2() {
        return nivel_Est_2;
    }

    public void AddErro(double erro_1, double erro_2) {
        this.erro_1.add(erro_1);
        this.erro_2.add(erro_2);
    }

    public void AddNivelReal(double nivel_1, double nivel_2) {
        this.nivel_Real_1.add(nivel_1);
        this.nivel_Real_2.add(nivel_2);
    }

    public void AddNivelEst(double nivel_1, double nivel_2) {
        this.nivel_Est_1.add(nivel_1);
        this.nivel_Est_2.add(nivel_2);
    }

    public void exportarDados() throws FileNotFoundException, IOException {
        File erro = new File("dados.txt");
        FileOutputStream fos = new FileOutputStream(erro);
        int cont = 0;
        String texto;

        texto = "ER = [";
        fos.write(texto.getBytes());

        while (cont != erro_1.size() - 1) {
            texto = (erro_1.get(cont).toString());
            fos.write(texto.getBytes());
            if (cont == erro_1.size() - 2) {
                texto = ";";
                fos.write(texto.getBytes());
            } else {
                texto = ",";
                fos.write(texto.getBytes());
            }
            cont++;
        }

        texto = "\r\n";
        fos.write(texto.getBytes());

        cont = 0;
        while (cont != erro_2.size() - 1) {
            texto = (erro_2.get(cont).toString());
            fos.write(texto.getBytes());
            if (cont == erro_2.size() - 2) {
                texto = "]";
                fos.write(texto.getBytes());
            } else {
                texto = ",";
                fos.write(texto.getBytes());
            }
            cont++;
        }

        texto = "\r\n";
        fos.write(texto.getBytes());
        texto = "\r\n";
        fos.write(texto.getBytes());
        cont = 0;
        texto = "NE = [";
        fos.write(texto.getBytes());

        while (cont != nivel_Est_1.size() - 1) {
            texto = (nivel_Est_1.get(cont).toString());
            fos.write(texto.getBytes());
            if (cont == nivel_Est_1.size() - 2) {
                texto = ";";
                fos.write(texto.getBytes());
            } else {
                texto = ",";
                fos.write(texto.getBytes());
            }
            cont++;
        }

        texto = "\r\n";
        fos.write(texto.getBytes());

        cont = 0;
        while (cont != nivel_Est_2.size() - 1) {
            texto = (nivel_Est_2.get(cont).toString());
            fos.write(texto.getBytes());
            if (cont == nivel_Est_2.size() - 2) {
                texto = "]";
                fos.write(texto.getBytes());
            } else {
                texto = ",";
                fos.write(texto.getBytes());
            }
            cont++;
        }

        texto = "\r\n";
        fos.write(texto.getBytes());
        texto = "\r\n";
        fos.write(texto.getBytes());
        cont = 0;
        texto = "NR = [";
        fos.write(texto.getBytes());

        while (cont != nivel_Real_1.size() - 1) {
            texto = (nivel_Real_1.get(cont).toString());
            fos.write(texto.getBytes());
            if (cont == nivel_Real_1.size() - 2) {
                texto = ";";
                fos.write(texto.getBytes());
            } else {
                texto = ",";
                fos.write(texto.getBytes());
            }
            cont++;
        }

        texto = "\r\n";
        fos.write(texto.getBytes());

        cont = 0;
        while (cont != nivel_Real_2.size() - 1) {
            texto = (nivel_Real_2.get(cont).toString());
            fos.write(texto.getBytes());
            if (cont == nivel_Real_2.size() - 2) {
                texto = "]";
                fos.write(texto.getBytes());
            } else {
                texto = ",";
                fos.write(texto.getBytes());
            }
            cont++;
        }
    }
}
